Obstacle avoidance for a vehicle such as an autonomous robot is difficult in an unknown environment. While a path can be plotted through a known environment which never varies, few environments remain constant. Further, these systems can be defeated by a single object which lies in a plotted path.
One system utilizes vision to examine a surrounding environment and avoid obstacles in it. Multiple images of the environment are taken and combined to determine by correspondence the distance to all features having a change in depth. S-curves are then plotted through these features. However, vast computations are required to perform this analysis, making the system slow and expensive.
Other systems model the surrounding environment by reducing the environment to geometric features. The environment is typically modelled as a series of line segments representing surface features, or as a grid representing the probability of presence or absence of objects within particular locations. Paths such as S-curves are typically plotted around the features modelled on the grid. Using line segment modelling, straight paths are computed to circumvent objects which are depicted as line segments.
Yet another system utilizes laser ranging, which classifies obstacles into categories such as boulders or hills and commands an avoidance procedure based on the category.